Strengthening Eiffel Contracts using Models
نویسنده
چکیده
Creating proper contracts as interface specifications for software components is a key quality for the usability of the component in various contexts. A major goal of software engineering is to extend the expressiveness of these contracts and to enable component developers to use contracts for their own benefit with as little overhead as possible. One source for this overhead might be changes in language or paradigm. A powerful possibility to express complex contracts for components is the use of behavioral models. This paper explores how these model specifications can be introduced into the Eiffel language, exploiting only standard language features and mechanisms. It also examines how these model-based contracts can be used to derive proof obligations as a starting point for formal verification.
منابع مشابه
Toward More Expressive Contracts
The principles of Design by Contract form the basis of the Eiffel approach and account for a good deal of its appeal. Eiffel's contracts are the result of a design trade-offbetween the full extent of formal specifications and what is acceptable to practicing software developers. The latter criterion has been critical: The ideas had to be practical; any competent programmer can immediately see t...
متن کاملEiffel as a Framework for Verification
The Eiffel method and language integrate a number of ideas originating from work on program verification. This position paper describes the goals of the Eiffel approach, presents current Eiffel-based verification techniques using contracts for run-time checks for testing and debugging, and outlines ongoing work on static verification.
متن کاملContracting and Proving Classes with Models
Functional specification and verification often requires specialized mathematicians to do the work. Software development and proving correctness are regarded as separate activities. We want developers to do the specification and verification. One of the promising approaches for letting developers create specifications is the “Design by Contract” methodology [7] as present in the Eiffel language...
متن کاملSkala University of West Bohemia
The use of various forms of contracts, like preconditions, are increasingly receiving more attention within Microsoft. This talk describes the design of Spec#, an experimental superset of the language C#, including preand postconditions and object invariants. Spec# gives rise to dynamic checks of contracts. The contracts can also be checked statically using the automatic checker Boogie. The tal...
متن کاملذخیره در منابع من
با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید
عنوان ژورنال:
دوره شماره
صفحات -
تاریخ انتشار 2003